package com.wwc.bwcj.util

import com.wwc.bwcj.entity.CartProduct

/**
 * 购物车管理类
 */
object CartManager {
    private val cartItems = ArrayList<CartProduct>()

    // 添加商品
    fun addProduct(product: CartProduct) {
        val existingItem = cartItems.find { it.productId == product.productId }
        // 检查购物车中是否已存在相同 productId 的商品
        if (existingItem != null) {
            // 如果存在，则增加该商品的数量
            existingItem.quantity += product.quantity
        } else {
            // 如果不存在，则添加该商品
            cartItems.add(product)
        }
    }

    // 移除商品
    fun removeProduct(productId: String) {
        // 使用迭代器安全地删除元素
        val iterator = cartItems.iterator()
        while (iterator.hasNext()) {
            if (iterator.next().productId == productId) {
                iterator.remove()
            }
        }
    }

    // 获取购物车中的商品列表
    fun getCartItems(): List<CartProduct> {
        return cartItems
    }

    // 清空购物车
    fun clearCart() {
        cartItems.clear()
    }
}
